Generating templates of nodes to structure content objects and steps to process the content objects

ABSTRACT

Provided are a method, system, and article of manufacture for generating templates of nodes to structure content objects and steps to process the content objects. A template is generated having a plurality of first level nodes representing a flow of tasks. A set of second level nodes representing a flow of steps is generated for at least one of the first level nodes to collectively perform the task represented by the first level node. A content object including information for a step represented by the node is associated with at least one node in the second level. Links are generated among the first level nodes and in each set of second level nodes indicating a logical ordering of the nodes and a direction of the flow of the tasks represented by the first level nodes and the flow of steps represented by the second level nodes. An end-user graphical user interface is generated from the generated nodes and links to direct an end user through the flow of tasks and steps represented by the nodes.

BACKGROUND OF THE INVENTION

1. Field

The present invention relates to a method, system, and article ofmanufacture for generating templates of nodes to structure contentobjects and steps to process the content objects.

2. Description of the Related Art

Independent units of information are unstructured in nature.Relationships and structure are introduced when the information unitsare presented in a logical order. Certain software programmingtechniques may be used to provide structure to unstructured informationand processes, such as a workflow program that is used to generate aworkflow process indicating specific operations performed at differentnodes in a workflow, a database, and the use of hyperlinks in hypertextdocuments to link together documents in a logical ordering, etc. Oncethe structure is defined for the information and pages, it may bedifficult to update or modify the structure and design, such as the casewith linked hypertext documents providing linked pages of a userinterface.

There is a need in the art for improved techniques to allow a developerto define structure for content objects and documents and processes usedto process the documents and content objects, and use the documents andcontent objects for other technical or business processes.

SUMMARY

Provided are a method, system, and article of manufacture for generatingtemplates of nodes to structure content objects and steps to process thecontent objects. A template is generated having a plurality of firstlevel nodes representing a flow of tasks. A set of second level nodesrepresenting a flow of steps is generated for at least one of the firstlevel nodes to collectively perform the task represented by the firstlevel node. A content object including information for a steprepresented by the node is associated with at least one node in thesecond level. Links are generated among the first level nodes and ineach set of second level nodes indicating a logical ordering of thenodes and a direction of the flow of the tasks represented by the firstlevel nodes and the flow of steps represented by the second level nodes.An end-user graphical user interface is generated from the generatednodes and links to direct an end user through the flow of tasks andsteps represented by the nodes.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an embodiment of a computing environment.

FIGS. 2 and 3 illustrate embodiments of templates having first andsecond level nodes.

FIGS. 4 and 5 illustrate additional embodiments of templates havingfirst and second level nodes.

FIGS. 6 and 7 illustrate pages for an end-user graphical user interfacegenerated from the second level nodes in the template of FIG. 5.

FIG. 8 illustrates an embodiment of operations to generate first andsecond level templates of nodes to define a flow of operations and stepswith respect to content objects.

DETAILED DESCRIPTION

FIG. 1 illustrates a computing environment in which embodiments may beimplemented. A system 2 includes a processor 4 and operating system 6.The operating system 6 implements a runtime environment in whichprograms, such as an authoring system 8, run. The authoring system 8generates an authoring system graphical user interface (GUI) 10 toenable a developer to generate a structured flow or organization ofcontent and steps for an end user to perform with respect to the contentobjects. Authoring GUI 10 generates a task model 12 comprising a firstlevel template 14 having multiple nodes representing tasks to perform aspart of the task model. One or more of the nodes representing the tasksmay have an associated second level template 16. Each second leveltemplate 16 has multiple nodes representing a flow of steps to performto implement the task associated with the second level template 16. Thedeveloper, using the authoring GUI 10, may associate a content objectwith one or more of the nodes of the second level templates 16. Acontent object may comprise a text document, file, executable program,etc. The content object may comprise a hypertext document includinghypertext links to programs or pages of additional information, such asa help or Frequently Asked Questions (FAQ) page.

In one embodiment, each second level node may include a content objectproviding a control button to enable the user to proceed to a next stepin the flow of steps. The templates 14 and 16 and content objectsassociated with the second level nodes may be stored in a contentdatabase 18. Although two levels of templates are described, there maybe any number of levels of templates linking to each other where eachsecond and further level of templates may provide content objects, stepsand links to further levels of templates to perform certain steps andprovide additional content objects in the flow of operations.

The developer may generate pages from the templates 14 and 16 for thetask model 12 to form an end user graphical user interface (GUI) 20,where the templates and nodes are converted to pages through which theend user may progress according to the flow of operations of the nodesin the first and second level templates. The end user GUI 20 may bestored in a program that may be deployed to end users to perform thesteps and review the content generated into the end user GUI 20.Further, the generated task model 12 may be stored and archived forfurther editing or later use. Yet further, the task model 12, comprisingthe first 14 and second 16 level templates, may be supplied to anotherapplication to consume. Such other applications receiving the task model12 may run the flow of operations and consume the content objectsrepresented in the templates 14 and 16.

FIG. 2 illustrates an instance of the authoring GUI 50 rendering a firstlevel node template 52 having graphical shapes, e.g., boxes,representing task nodes, including Task 1, Task 2 . . . Task 5. Thelines between the task nodes represent the flow of the tasks 1, 2 . . .5 that collectively comprise a task model representing an overall taskto accomplish, such as diagnose a technical problem with a device orprogram, perform a set of organizational operations to complete anoverall business or technical task, process content objects, provide aguided tutorial through steps rendering the content objects, etc. Theflows may provide an explanation without branching through the use ofquestions and answers or a flow that branches to other flows and levelsof templates and content objects based on user answers to questions. Aneditor pane 54 includes task buttons, such as “New Task” that enablesthe developer to add a task box to the template 52, a “New Link” buttonto add a line connecting two tasks indicating a flow of operations fromone task to another, and a “Save and Close” button to save the taskmodel. The editor pane 54 further includes reusable tasks (“RT”), e.g.,RT1, RT2 . . . RTn, that may be added to the first level node template52. A reusable task comprises a task node that may be added to the firstlevel template 52. Adding a reusable task node also adds the secondlevel template associated with the reusable task node to the task modelbeing generated.

FIG. 3 illustrates an instance of the authoring GUI 70 rendering asecond level node template 72 having the steps representing operationsto perform for an associated task, e.g., Task 2 in the example of FIG.3, in the first level node template 52. The editor pane 74 includes a“New Step” button that enables the user to add graphical shapes, e.g.,boxes, representing steps to perform and a “New Link” button that thatallows the user to draw lines to define a logical ordering of the stepnodes. The “Edit Pages” button allows the user to edit a content pageassociated with each step node. In the content page for the step nodes,the user may include information on operations for the user to performfor that step and include links or information on programs to run toperform the operations for that step. The end result steps or end stepsmay correspond to tasks in the first level template 52, such as tasks 3and 5. This provides a flow of operations from a final step in a secondlevel template 74 for a first level node, such as Task 2 in the firstlevel template 52, to a subsequent first level node or Task, e.g., Tasks3 or 5, according to the flow in the first level template 52.

The developer may further use the authoring GUI 10 to add metadata forthe links and nodes, such as a label for the link or node, a descriptionof the link or node, and design notes. This metadata assists thedeveloper in editing the flows defined in the templates and documentingthe templates.

With the described embodiments, the user may associate any type ofcontent object with a step in the second level template 72, such as atext document, executable program, etc.

FIG. 4 illustrates an embodiment of an authoring GUI 90 implementationrendering a first level template 92 including task nodes providing astructure flow of tasks to diagnose a device or program. The tasks andflow comprise an introduction task 94, an identify symptoms task 96 todetermine the symptoms or observable problems with the device beingdiagnosed, a collect data task 98 to collect data on device operations,an analyze data task 100 to analyze the collected data, an identify rootcause task 102 to determine the problem with the device, and avalidation solution task 104 to determine whether the solution istenable. Moreover, many of the tasks may segue to a contact technicalsupport task 106. The node for the contact technical support task 106may comprise a content page having contact information for technicalsupport. Further, many steps, such as steps 96, 100, 102, 104, mayproceed to a problem fixed task 108 indicating an end to the flow.

FIG. 5 illustrates an embodiment of an instance of the authoring GUI 110including the second level template 112 of nodes representing steps toperform for the first level analyze data task 100 (FIG. 4). From anintroduction step 114, the step flow may proceed to test one of twocomponents in the device or program being diagnosed. Each componentanalyzer step 116, 118 allows the user to install a different componenttester at an installation step 120, 122. For component 1, the user mayproceed to the installation step 120. At the analyze component 1 step124, the user may be presented an associated content page with a link toallow the user to launch the component 1 tester or provide writteninstructions on how the user may analyze component 1. For component 2,the step flow proceeds to installation step 122 and/or to a decideversion step 126 at which the end user may decide to proceed to steps128 or 130 to use one of the two different versions of component 2tester to analyze the component 2. After analyzing the components, theuser may proceed to an evaluation step 132 or 134 to evaluate theresults. The step node 132, 134 includes content pages includinginformation to assist the user in analyzing the problem and allowing theuser to select a next step in the flow, such as contact support 136, endsession 138, identify the root cause 140. The end steps 136, 138, and140 correspond to first level tasks 106, 108, and 102, respectively, inFIG. 4, to cause the flow to proceed to the next first level task in thetask flow from the end step 136, 138 or 140 in the second level stepflow.

FIG. 6 illustrates an embodiment of a page 150 displayed in the end-userGUI 20 generated from the analyze component 1 step 124 in the developergenerated second level template 110 and the content page associated withthe step 124. The analyze component page 150 includes text content 152instructing the user to select a link 154 to launch the component 1tester program if previously installed. Selecting the back button 156and next button 158 causes the end-user GUI 20 to proceed to the pagefor a previous and subsequent steps, respectively, in the flow.Selection of the end session button 160 branches to the end session task108 (FIG. 4) in the first level flow. The text content 162 also providesan explanation of the analyze step and manual operations the end usermay perform in lieu of using the component 1 tester program that can beinstalled at step 120.

FIG. 7 illustrates an embodiment of a page 170 displayed in the end-userGUI 20 generated from a page associated with the evaluate step 132 forcomponent 1 in the second level flow of FIG. 5. The page enables theuser to select a further step 172, 174, 176, 178 corresponding to steps118, 102, 108, and 106, respectively, in the second level step flow ofFIG. 5. Further, end steps 136, 138, and 140 in the second level flowcorrespond to task 106, 108, and 102, respectively, in the first leveltask flow indicating the flow between steps and tasks in the model.Selection of one of the options 172, 174, 176, and 178 along withselection of the Next button 180 causes the flow to proceed to the nextstep and/or task in the flow of tasks and steps. Selection of the Backbutton 182 causes the end-user GUI 20 to render the content object forthe previous step, which comprises the analyze component 1 step 124.Selection of the stop session button 184 causes the end-user userinterface to proceed to the content page associated with the end sessionstep 138 in FIG. 5, which corresponds to the end session task 108 in thefirst level task flow of FIG. 4.

FIG. 8 illustrates an embodiment of operations performed by theauthoring system 8, which provides an authoring system GUI 10 enablingthe developer to create first and second level nodes and content objectsfor the second level nodes that associates content and operations for anend-user GUI 20. The authoring system GUI 10 is invoked (at block 200)and enables the developer to perform the operations in blocks 202-224one or more times. The developer may use the authoring GUI 10 to add (atblock 202) graphical shapes to a first level node template 52, 92, whereeach shape comprises a node representing a task to perform in the taskmodel. The authoring GUI 10 may be used to create (at block 204) linksbetween the first level nodes in the first level template 52, 92representing a logical ordering and flow of the tasks represented by thefirst level nodes. The developer may select (at block 206) one firstlevel node (graphical shape) to open a second level node template 72,112 for the selected first level node, e.g., task 2 in first leveltemplate 52 FIG. 2 and analyze data task 100 in template 92 (FIG. 4).The authoring GUI 10 may be used to add (at block 208) graphical shapesto the opened second level node template 72, 112, where each added shapecomprises a second level node representing a step to perform. A contentobject may be associated (at block 210) with each second level node inthe opened second level node template 72, 112. A content object maycomprise a file having text or hyperlinks to launch application programsor links to further pages of information. The developer may use (atblock 212) the authoring GUI 10 to create links between the second levelnodes in the selected second level node template 72, 112 representing alogical ordering and flow of the tasks represented by the second levelnodes.

The developer may further add (at block 216) a reusable task, such asthe reusable tasks in edit pane 54 (FIG. 2) to the first level templatehaving a predefined template of second level nodes. A reusable set ofsteps may be added (at block 218) to one second level node templatehaving predefined content objects for the reusable set of steps. Uponreceiving (at block 220) modification to one content object in onereusable set of nodes, which may be modified via the authoring GUI 10,the authoring system 8 may automatically (at block 222) propagatemodifications to the content objects in all task models in which thereusable set of nodes was added. The developer may then use (at block224) the authoring GUI 10 to export (at block 226) the first leveltemplate 14 and second level templates 16 to create an end-usergraphical user interface 20 to perform the operations represented by theflow of tasks and steps for the tasks in the templates. For instance,the authoring system 8 may convert the templates 14, 16 of nodes andtheir associated content objects into a series of hypertext markuplanguage (HTML) or Extensible Markup language (XML) pages that includelinks to other pages according to the logical ordering represented bythe links in the first level and second level templates to enable theend-user to navigate through the pages according to the logical orderingindicated in the first and second level templates. Alternatively, thetemplates comprising the task model may be archived, stored or otherwiseprovided to an application or external component.

Described embodiments provide techniques to provide multiple levels ofordering of content objects and tasks related to the processing of thosecontent objects. The flow represented by the templates comprising themultiple levels of ordering form a task model representing an overalltask to accomplish, such as diagnose a technical problem with a deviceor program, perform a set of organizational operations to complete anoverall business or technical task, process content objects, provide aguided tutorial through steps rendering the content objects, etc. Thetemplates and their indicated logical ordering are used to generate anend-user user interface that enables the user to proceed through astructured series of steps to process and use content objects, which maycomprise documents and programs, in the logical ordering indicated inthe templates. This described authoring tool allows the developer todefine a structure for documents, programs and a process that may beotherwise maintained or utilized in an unstructured format.

Additional Embodiment Details

The described operations may be implemented as a method, apparatus orarticle of manufacture using standard programming and/or engineeringtechniques to produce software, firmware, hardware, or any combinationthereof. The described operations may be implemented as code maintainedin a “computer readable medium”, where a processor may read and executethe code from the computer readable medium. A computer readable mediummay comprise media such as magnetic storage medium (e.g., hard diskdrives, floppy disks, tape, etc.), optical storage (CD-ROMs, DVDs,optical disks, etc.), volatile and non-volatile memory devices (e.g.,EEPROMs, ROMs, PROMs, RAMs, DRAMs, SRAMs, Flash Memory, firmware,programmable logic, etc.), etc. The code implementing the describedoperations may further be implemented in hardware logic (e.g., anintegrated circuit chip, Programmable Gate Array (PGA), ApplicationSpecific Integrated Circuit (ASIC), etc.). Still further, the codeimplementing the described operations may be implemented in“transmission signals”, where transmission signals may propagate throughspace or through a transmission media, such as an optical fiber, copperwire, etc. The transmission signals in which the code or logic isencoded may further comprise a wireless signal, satellite transmission,radio waves, infrared signals, Bluetooth, etc. The transmission signalsin which the code or logic is encoded is capable of being transmitted bya transmitting station and received by a receiving station, where thecode or logic encoded in the transmission signal may be decoded andstored in hardware or a computer readable medium at the receiving andtransmitting stations or devices. An “article of manufacture” comprisescomputer readable medium, hardware logic, and/or transmission signals inwhich code may be implemented. A device in which the code implementingthe described embodiments of operations is encoded may comprise acomputer readable medium or hardware logic. Of course, those skilled inthe art will recognize that many modifications may be made to thisconfiguration without departing from the scope of the present invention,and that the article of manufacture may comprise suitable informationbearing medium known in the art.

In certain embodiments, the authoring system GUI is used to generate aflow of steps and operations to diagnose a problem with a device orprograms. In alternative embodiments, the authoring system GUI may beutilized to define a flow of steps and operations with respect tocontent objects that is used to generate linked pages for an end-useruser interface that provides structure to how the end-user may processthe content objects associated with the steps defined for the secondlevel nodes.

The terms “an embodiment”, “embodiment”, “embodiments”, “theembodiment”, “the embodiments”, “one or more embodiments”, “someembodiments”, and “one embodiment” mean “one or more (but not all)embodiments of the present invention(s)” unless expressly specifiedotherwise.

The terms “including”, “comprising”, “having” and variations thereofmean “including but not limited to”, unless expressly specifiedotherwise.

The enumerated listing of items does not imply that any or all of theitems are mutually exclusive, unless expressly specified otherwise.

The terms “a”, “an” and “the” mean “one or more”, unless expresslyspecified otherwise.

Devices that are in communication with each other need not be incontinuous communication with each other, unless expressly specifiedotherwise. In addition, devices that are in communication with eachother may communicate directly or indirectly through one or moreintermediaries.

A description of an embodiment with several components in communicationwith each other does not imply that all such components are required. Onthe contrary a variety of optional components are described toillustrate the wide variety of possible embodiments of the presentinvention.

Further, although process steps, method steps, algorithms or the likemay be described in a sequential order, such processes, methods andalgorithms may be configured to work in alternate orders. In otherwords, any sequence or order of steps that may be described does notnecessarily indicate a requirement that the steps be performed in thatorder. The steps of processes described herein may be performed in anyorder practical. Further, some steps may be performed simultaneously.

When a single device or article is described herein, it will be readilyapparent that more than one device/article (whether or not theycooperate) may be used in place of a single device/article. Similarly,where more than one device or article is described herein (whether ornot they cooperate), it will be readily apparent that a singledevice/article may be used in place of the more than one device orarticle or a different number of devices/articles may be used instead ofthe shown number of devices or programs. The functionality and/or thefeatures of a device may be alternatively embodied by one or more otherdevices which are not explicitly described as having suchfunctionality/features. Thus, other embodiments of the present inventionneed not include the device itself.

The illustrated operations of FIG. 6 shows certain events occurring in acertain order. In alternative embodiments, certain operations may beperformed in a different order, modified or removed. Moreover, steps maybe added to the above described logic and still conform to the describedembodiments. Further, operations described herein may occur sequentiallyor certain operations may be processed in parallel. Yet further,operations may be performed by a single processing unit or bydistributed processing units.

The foregoing description of various embodiments of the invention hasbeen presented for the purposes of illustration and description. It isnot intended to be exhaustive or to limit the invention to the preciseform disclosed. Many modifications and variations are possible in lightof the above teaching. It is intended that the scope of the invention belimited not by this detailed description, but rather by the claimsappended hereto. The above specification, examples and data provide acomplete description of the manufacture and use of the composition ofthe invention. Since many embodiments of the invention can be madewithout departing from the spirit and scope of the invention, theinvention resides in the claims hereinafter appended.

1. A method, comprising: generating a first template having a pluralityof first level nodes representing a flow of tasks; generating for eachof at least two of the first level nodes a second template having a setof second level nodes representing a flow of steps to collectivelyperform one of the tasks represented by the first level node in thefirst template for which the second template is generated; associatingwith at least one second level node in at least one of the secondtemplates a content object including information for a step representedby the second level node; generating links among the first level nodesin the first template and in each set of second level nodes in eachsecond template indicating a logical ordering of the nodes and adirection of the flow of the tasks represented by the first level nodesand the flow of steps represented by the second level nodes; andgenerating an end-user graphical user interface from the generated nodesand links to direct an end user through the flow of tasks and stepsrepresented by the nodes in the first and second templates.
 2. Themethod of claim 1, wherein the flow of steps in the set of second levelnodes in the second templates indicates at least one end node, whereinthe end node directs the flow to one first level node.
 3. The method ofclaim 1, further comprising: using an authoring graphical user interfaceto: add graphical shapes to the first template representing the firstlevel nodes; select one of the graphical shapes representing a firstlevel node to access the second template for the set of second levelnodes for the selected first level node; and add graphical shapes to thesecond template representing the second level nodes.
 4. The method ofclaim 3, wherein the authoring graphical user interface is further usedto: draw lines between the graphical shapes in the first template torepresent a logical ordering and the flow of tasks represented by thefirst level nodes; and for the sets of second level nodes for the firstlevel nodes, draw lines between the graphical shapes for the secondlevel nodes to represent a logical ordering and the flow of steps of thesecond level nodes.
 5. The method of claim 1, wherein a content objectassociated with one second level node includes at least one of textualinformation to instruct a user on operations to perform and a link to anexecutable program to run to perform the step represented by the secondlevel node.
 6. The method of claim 1, further comprising: generatingmultiple links from one node in one set of second level nodes tomultiple nodes in the set of second level nodes, wherein the flow ofsteps to one of the second level nodes to which the one second levelnode links is determined by a user operation performed in the end-usergraphical interface page generated for the node linking to multiplenodes.
 7. The method of claim 1, further comprising: generating multiplelinks from one first level node to multiple first level nodes, whereinthe flow of tasks to one of the first level nodes to which the one firstlevel node links is determined by a user operation performed in a pagerendered by the end-user graphical interface for one second level nodefor the first level node linking to the multiple nodes.
 8. The method ofclaim 1, further comprising: generating a reusable set of nodesrepresenting a flow of operations; and including the reusable set ofnodes in multiple models, wherein each model comprises one templatehaving first level nodes and sets of second level nodes for the firstlevel nodes.
 9. The method of claim 8, wherein the reusable set of nodesis a member of the set of reusable nodes comprising at least one of: afirst level node and set of second level nodes and a group of secondlevel nodes to be included in the set of second level nodes.
 10. Themethod of claim 8, further comprising: modifying one content object forone second level node in the reusable set of nodes; and propagating themodification to the content object to each model including the reusableset of nodes.
 11. The method of claim 1, wherein the flow of tasksrepresented by the first level nodes is directed to troubleshoot aproblem with an electronic device, including: a collect data first levelnode having second level nodes having a flow of steps directing the enduser to collect data on the electronic device operations; and an analyzefirst level node having second level nodes having a flow of stepsdirecting the end user to analyze a problem with the computer devicebased on the data collected according to the collect data first levelnode.
 12. A system, comprising: a processor; and an authoring systemexecuted by the processor to perform operations, the operationscomprising: generating a first template having a plurality of firstlevel nodes representing a flow of tasks; generating for each of atleast two of the first level nodes a second template having a set ofsecond level nodes representing a flow of steps to collectively performone of the tasks represented by the first level node in the firsttemplate for which the second template is generated; associating with atleast one second level node in at least one of the second templates acontent object including information for a step represented by thesecond level node; generating links among the first level nodes in thefirst template and in each set of second level nodes in each secondtemplate indicating a logical ordering of the nodes and a direction ofthe flow of the tasks represented by the first level nodes and the flowof steps represented by the second level nodes; and generating anend-user graphical user interface from the generated nodes and links todirect an end user through the flow of tasks and steps represented bythe nodes in the first and second templates.
 13. The system of claim 12,wherein the flow of steps in the set of second level nodes in the secondtemplates indicates at least one end node, wherein the end node directsthe flow to one first level node.
 14. The system of claim 12, whereinthe authoring system renders an authoring graphical user interface toenable a user to cause the authoring system to perform: add graphicalshapes to the first template representing the first level nodes; selectone of the graphical shapes representing a first level node to accessthe second template for the set of second level nodes for the selectedfirst level node; and add graphical shapes to the second templaterepresenting the second level nodes.
 15. The system of claim 14, whereinthe authoring graphical user interface further enables the user to causethe authoring system to perform: draw lines between the graphical shapesin the first template to represent a logical ordering and the flow oftasks represented by the first level nodes; and for the sets of secondlevel nodes for the first level nodes, draw lines between the graphicalshapes for the second level nodes to represent a logical ordering andthe flow of steps of the second level nodes.
 16. The system of claim 12,wherein a content object associated with one second level node includesat least one of textual information to instruct a user on operations toperform and a link to an executable program to run to perform the steprepresented by the second level node.
 17. The system of claim 12,wherein the operations further comprise: generating multiple links fromone node in one set of second level nodes to multiple nodes in the setof second level nodes, wherein the flow of steps to one of the secondlevel nodes to which the one second level node links is determined by auser operation performed in the end-user graphical interface pagegenerated for the node linking to multiple nodes.
 18. The system ofclaim 12, wherein the operations further comprise: generating multiplelinks from one first level node to multiple first level nodes, whereinthe flow of tasks to one of the first level nodes to which the one firstlevel node links is determined by a user operation performed in a pagerendered by the end-user graphical interface for one second level nodefor the first level node linking to the multiple nodes.
 19. The systemof claim 12, wherein the operations further comprise: generating areusable set of nodes representing a flow of operations; and includingthe reusable set of nodes in multiple models, wherein each modelcomprises one template having first level nodes and sets of second levelnodes for the first level nodes.
 20. The system of claim 19, wherein theoperations further comprise: modifying one content object for one secondlevel node in the reusable set of nodes; and propagating themodification to the content object to each model including the reusableset of nodes.
 21. The system of claim 12, wherein the flow of tasksrepresented by the first level nodes is directed to troubleshoot aproblem with an electronic device, including: a collect data first levelnode having second level nodes having a flow of steps directing the enduser to collect data on the electronic device operations; and an analyzefirst level node having second level nodes having a flow of stepsdirecting the end user to analyze a problem with the computer devicebased on the data collected according to the collect data first levelnode.
 22. An article of manufacture implementing comprising a computerreadable storage medium having code executed to cause operations to beperformed, the operations comprising: generating a first template havinga plurality of first level nodes representing a flow of tasks;generating for each of at least two of the first level nodes a secondtemplate having a set of second level nodes representing a flow of stepsto collectively perform one of the tasks represented by the first levelnode in the first template for which the second template is generated;associating with at least one second level node in at least one of thesecond templates a content object including information for a steprepresented by the node; generating links among the first level nodes inthe first template and in each set of second level nodes in each secondtemplate indicating a logical ordering of the nodes and a direction ofthe flow of the tasks represented by the first level nodes and the flowof steps represented by the second level nodes; and generating anend-user graphical user interface from the generated nodes and links todirect an end user through the flow of tasks and steps represented bythe nodes in the first and second templates.
 23. The article ofmanufacture of claim 22, wherein the flow of steps in the set of secondlevel nodes in the second templates indicates at least one end node,wherein the end node directs the flow to one first level node.
 24. Thearticle of manufacture of claim 22, wherein the operations furthercomprise: generating an authoring graphical user interface to enable auser to cause operations comprising: adding graphical shapes to thefirst template representing the first level nodes; selecting one of thegraphical shapes representing a first level node to access the secondtemplate for the set of second level nodes for the selected first levelnode; and adding graphical shapes to the second template representingthe second level nodes.
 25. The article of manufacture of claim 24,wherein the authoring graphical user interface further enables the userto cause operations comprising: drawing lines between the graphicalshapes in the first template to represent a logical ordering and theflow of tasks represented by the first level nodes; and for the sets ofsecond level nodes for the first level nodes, drawing lines between thegraphical shapes for the second level nodes to represent a logicalordering and the flow of steps of the second level nodes.
 26. Thearticle of manufacture of claim 22, wherein a content object associatedwith one second level node includes at least one of textual informationto instruct a user on operations to perform and a link to an executableprogram to run to perform the step represented by the second level node.27. The article of manufacture of claim 22, wherein the operationsfurther comprise: generating multiple links from one node in one set ofsecond level nodes to multiple nodes in the set of second level nodes,wherein the flow of steps to one of the second level nodes to which theone second level node links is determined by a user operation performedin the end-user graphical interface page generated for the node linkingto multiple nodes.
 28. The article of manufacture of claim 22, whereinthe operations further comprise: generating multiple links from onefirst level node to multiple first level nodes, wherein the flow oftasks to one of the first level nodes to which the one first level nodelinks is determined by a user operation performed in a page rendered bythe end-user graphical interface for one second level node for the firstlevel node linking to the multiple nodes.
 29. The article of manufactureof claim 22, wherein the operations further comprise: generating areusable set of nodes representing a flow of operations; and includingthe reusable set of nodes in multiple models, wherein each modelcomprises one template having first level nodes and sets of second levelnodes for the first level nodes.
 30. The article of manufacture of claim29, wherein the reusable set of nodes is a member of the set of reusablenodes comprising at least one of: a first level node and set of secondlevel nodes and a group of second level nodes to be included in the setof second level nodes.
 31. The article of manufacture of claim 29,wherein the operations further comprise: modifying one content objectfor one second level node in the reusable set of nodes; and propagatingthe modification to the content object to each model including thereusable set of nodes.
 32. The article of manufacture of claim 22,wherein the flow of tasks represented by the first level nodes isdirected to troubleshoot a problem with an electronic device, including:a collect data first level node having second level nodes having a flowof steps directing the end user to collect data on the electronic deviceoperations; and an analyze first level node having second level nodeshaving a flow of steps directing the end user to analyze a problem withthe computer device based on the data collected according to the collectdata first level node.